/**
 * 
 */
package kylin.controller.converter;

import java.io.IOException;

import kylin.base.entity.DataTables;

import org.codehaus.jackson.JsonParseException;
import org.codehaus.jackson.map.JsonMappingException;
import org.codehaus.jackson.map.ObjectMapper;
import org.codehaus.jackson.map.SerializationConfig;
import org.springframework.core.convert.converter.Converter;


/**
 * @Title 
 * @Description 日期转换器
 * @author XQL
 * @Date 2015年8月13日 上午10:50:13
 */
public class DataTablesConverter implements Converter<String, DataTables>{

	
	/**
	 * @Title 将DataTables的json字符串转为DataTables对象
	 * @Description 主要是针对前端使用了DataTables插件的参数封装成JavaBean对象
	 * @Date 2015年9月8日 下午9:54:17
	 * @param dtJson
	 * @return
	 * @see org.springframework.core.convert.converter.Converter#convert(java.lang.Object)
	 */
	@Override
	public DataTables convert(String dtJson) {
		
		//System.out.println(this.getClass().getName()+"|||"+dtJson);
		
		DataTables dt = null;
		
		ObjectMapper mapper = new ObjectMapper();
		mapper.configure(SerializationConfig.Feature.INDENT_OUTPUT, Boolean.TRUE);
		
		try {
			//dtJson字符串转为DataTables对象
			dt = mapper.readValue(dtJson, DataTables.class);
			
		} catch (JsonParseException e) {
			e.printStackTrace();
		} catch (JsonMappingException e) {
			e.printStackTrace();
		} catch (IOException e) {
			e.printStackTrace();
		}
		
		return dt;
	}
	
	
}
